home *** CD-ROM | disk | FTP | other *** search
/ AmigActive 2 / AACD 2.iso / AACD / Online / ProfiPacket / Install_HD next >
Text File  |  1999-06-28  |  12KB  |  575 lines

  1. ;ProfiPacket - packet radio terminal program
  2. ;Copyright (C) 1999  Alexander Feigl
  3. ;
  4. ;This program is free software; you can redistribute it and/or modify
  5. ;it under the terms of the GNU General Public License as published by
  6. ;the Free Software Foundation; either version 2 of the License, or
  7. ;(at your option) any later version.
  8. ;
  9. ;This program is distributed in the hope that it will be useful,
  10. ;but WITHOUT ANY WARRANTY; without even the implied warranty of
  11. ;MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
  12. ;GNU General Public License for more details.
  13. ;
  14. ;You should have received a copy of the GNU General Public License
  15. ;along with this program; if not, write to the Free Software
  16. ;Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
  17. ;
  18. ;Author:
  19. ;
  20. ;Alexander Feigl
  21. ;Burachstraße 51
  22. ;
  23. ;D-88250 Weingarten
  24. ;
  25. ;EMail : Alexander.Feigl@gmx.de
  26.  
  27. (procedure P_CopyServers
  28.  
  29.   (set i 0)
  30.   (set PatternStr "(%")
  31.  
  32.   (while (set ServerName (select i 
  33.       "BBS"
  34.       "Chat"
  35.       "Converse"
  36.       "Datacollector"
  37.       "FileAccess"
  38.       "Interlink"
  39.       "Mail"
  40.       "Miscellaneous"
  41.       "UserSettings"
  42.       ""
  43.       )
  44.     
  45.      )
  46.     (( IF (IN InstallServers i)
  47.       (
  48.        (SET PatternStr (CAT PatternStr "|" ServerName PatternSuffix))
  49.       )
  50.       (
  51.        (delete (tackon PatternPath (cat ServerName PatternSuffix)))
  52.       )
  53.     )
  54.     (set i (+ i 1))
  55.   ))
  56.  
  57.   (SET PatternStr (CAT PatternStr ")"))
  58.  
  59.   (Copyfiles
  60.     (Source PatternSource)
  61.     (DEST PatternPath)
  62.     (PATTERN PatternStr)
  63.   )
  64. )
  65.  
  66.  
  67.  
  68. (procedure P_CopyCatalogs
  69.  
  70.  (set CatalogSource (tackon (tackon "Profi_Packet/Catalogs" CatalogLanguage) "ProfiPacket"))
  71.  (set CatalogDestT (tackon CatalogDir CatalogLanguage) )
  72.  
  73.  (IF 
  74.    (NOT (EXISTS (CatalogDestT)))
  75.   
  76.    ( 
  77.     (MAKEDIR (CatalogDestT))
  78.    )      
  79.  )
  80.  
  81.  (set CatalogDest (tackon CatalogDestT "ProfiPacket") )
  82.  
  83.  (IF 
  84.    (NOT (EXISTS (CatalogDest)))
  85.   
  86.    ( 
  87.     (MAKEDIR (CatalogDest))
  88.    )      
  89.  )
  90.  
  91.  (Copyfiles
  92.    (Source CatalogSource)
  93.    (DEST CatalogDest)
  94.    (PATTERN "ProfiPacket#?")
  95.  )
  96.  
  97.  (set PatternSuffix ".catalog")
  98.  (set PatternPath CatalogDest)
  99.  (set PatternSource CatalogSource)
  100.  (P_CopyServers)
  101.  
  102. )
  103. ;----------------------------------------------------------------
  104. ;----------------------------------------------------------------
  105. ;---------------------------Main procedure-----------------------
  106. ;----------------------------------------------------------------
  107. ;----------------------------------------------------------------
  108.  
  109. (Complete 0)
  110.  
  111. (SET #muidir (getassign "MUI") )
  112.  
  113. (IF (= #muidir "")
  114.   (SET #muiverrev (getversion "libs:muimaster.library"))
  115.   (SET #muiverrev (getversion "mui:libs/muimaster.library"))
  116. )
  117.  
  118. (SET #muiver (/ #muiverrev 65536))
  119. (SET #muirev (- #muiverrev (* #muiver 65536) ) )
  120.  
  121. (IF (< 19 #muiver) 
  122.  (abort "MUI V3.8 must be installed on your system!")
  123.  
  124.  
  125. (welcome)
  126.  
  127. (message "WARNING !  /  WARNUNG !\n\n"
  128.          "This version of ProfiPacket is not the final release! " 
  129.          "Many things may not work as intended, many other don't "
  130.          "work at all. Docs are not yet available in English! "
  131.          "You have been warned!\n\n"
  132.          "Diese Version von ProfiPacket ist nicht die endgültige "
  133.          "Version! Einige Funktionen könnnen noch nicht so "
  134.          "funktionieren wie beabsichtigt, einige funktionieren "
  135.          "überhaupt noch nicht. Die Programmbeschreibung ist "
  136.          "unvollständig. Sie wurden gewarnt!"
  137.         
  138.  )
  139.  
  140. (SET InstallPath 
  141.   (ASKDIR
  142.     (PROMPT "Please select directory to install the program. A new drawer "
  143.             "called ProfiPacket will be installed at this location.")
  144.     (HELP "You have to select where to install the programs on your "
  145.           "harddisk.")
  146.     (DEFAULT "sys:")
  147.     )
  148.   )
  149.  
  150.  
  151. (SET InstallLanguages
  152.  
  153.   (ASKOPTIONS
  154.  
  155.     (PROMPT "Please select the catalog files of the languages you want to "
  156.             "install.")
  157.     (HELP "Workbench 2.1 supports localization of programmes to your "
  158.           "native language. You can select these languages ProfiPacket "
  159.           "should support. (n/a) means that this language is not yet "
  160.           "supported in ProfiPacket but ProfiPacket is prepared to "
  161.           "support this language due to a translation request.")
  162.     (CHOICES "German" "French" "Dutch (incomplete)" "Polski (incomplete)" "Norwegian"
  163.              "Czech (n/a)" "Spain (n/a)" )
  164.     (DEFAULT 65535)
  165.   )
  166. )
  167.  
  168.  
  169. (SET InstallServers 
  170.   (ASKOPTIONS
  171.   
  172.     (PROMPT "Please select servers you want to install. Install all default "
  173.             "servers if possible, otherwise some functions of the programme "
  174.             "cannot be used.")
  175.     (HELP "ProfiPacket need servers to handle with inputs and outputs of "
  176.           "Packet Radio. You can write your own server to implement functions "
  177.           "which are not yet implemented, but you should install all servers "
  178.           "which are already checked because these are basic functions of the "
  179.           "programme. If you want to install additional features, so you can "
  180.            "check the unchecked servers too.")
  181.     (CHOICES 
  182.       "BBS.server"
  183.       "Chat.server"
  184.       "Converse.server"
  185.       "Datacollector.server"
  186.       "FileAccess.server"
  187.       "Interlink.server"
  188.       "Mail.server"
  189.       "Miscellaneous.server"
  190.       "UserSettings.server"
  191.      )
  192.     (DEFAULT 438)
  193.      )
  194.   )
  195.  
  196. (SET @default-dest (TACKON InstallPath ""))
  197.  
  198.  
  199. (SET InstallDir (TACKON InstallPath "ProfiPacket") )
  200.  
  201. (SET ServerDir (TACKON InstallDir "Servers") )
  202.  
  203. (SET GlobalDir (TACKON InstallDir "GLOBAL") )
  204.  
  205. (SET TNCInitDir (TACKON InstallDir "Text/TNC_Init") )
  206.  
  207. (SET SaveDir (TACKON InstallDir "Save") )
  208.  
  209. (SET UserDir (TACKON InstallDir "User") )
  210.  
  211. (SET DataDir (TACKON InstallDir "Data") )
  212.  
  213. (SET TextDir (TACKON InstallDir "Text") )
  214.  
  215. (Set FontDir (TACKON InstallDir "Data/PCFont") )
  216.  
  217. (Set CatalogDirV023 (TACKON InstallDir "Data/Catalogs") )
  218.  
  219. (Set CatalogDir (TACKON InstallDir "Catalogs") )
  220.  
  221. (Set HelpDir (TACKON InstallDir "Text/Help") )
  222.  
  223. (Set BBSDir (TACKON InstallDir "Data/BBS") )
  224.  
  225. (Set BBSResumeDir (TACKON InstallDir "Data/BBS/Resume") )
  226.  
  227. (Set DocsDir (TACKON InstallDir "Docs") )
  228.  
  229. (Set ContribDir (TACKON InstallDir "Contrib") )
  230.  
  231. (Complete 5)
  232.  
  233. (Working)
  234.  
  235. (IF (NOT (EXISTS (InstallDir))) 
  236.   
  237.   (
  238.     (MAKEDIR (InstallDir) (INFOS)  )
  239.  
  240.     )
  241.  
  242.   )
  243.  
  244.  
  245.   (IF (NOT (EXISTS (DocsDir)))
  246.     
  247.     (
  248.       (MAKEDIR (DocsDir) (INFOS) )
  249.       )
  250.     )
  251.  
  252.   (IF (NOT (EXISTS (SaveDir)))
  253.     
  254.     (
  255.       (MAKEDIR (SaveDir))
  256.       )
  257.     )
  258.  
  259.   (IF (NOT (EXISTS (UserDir)))
  260.     
  261.     (
  262.       (MAKEDIR (UserDir))
  263.       )
  264.     )
  265.  
  266.   (IF (NOT (EXISTS (DataDir)))
  267.   
  268.     (  
  269.       (MAKEDIR (DataDir))
  270.       )
  271.       
  272.     )
  273.  
  274.   (IF (NOT (EXISTS (BBSDir)))
  275.     
  276.     (
  277.       (MAKEDIR (BBSDir))
  278.       )
  279.   
  280.     )
  281.  
  282.   (IF (NOT (EXISTS (BBSResumeDir)))
  283.     
  284.     (
  285.       (MAKEDIR (BBSResumeDir))
  286.       )
  287.   
  288.     )
  289.  
  290.     
  291.   (IF (NOT (EXISTS (TextDir)))
  292.   
  293.     ( 
  294.       (MAKEDIR (TextDir))
  295.       )
  296.       
  297.     )
  298.  
  299.   (IF (NOT (EXISTS (CatalogDir)))
  300.   
  301.     ( 
  302.       (MAKEDIR (CatalogDir))
  303.       )
  304.     )
  305.  
  306.  
  307.   (IF (EXISTS (CatalogDirV023) )
  308.  
  309.     (
  310.       (DELETE (TACKON CatalogDirV023 "Deutsch/ProfiPacket.catalog"))
  311.       (DELETE (TACKON CatalogDirV023 "English/ProfiPacket.catalog"))
  312.       (DELETE (TACKON CatalogDirV023 "Deutsch"))
  313.       (DELETE (TACKON CatalogDirV023 "English"))
  314.       (DELETE (CatalogDirV023)  )
  315.     )
  316.  
  317.   )
  318.       
  319.   (IF (NOT (EXISTS (HelpDir)))
  320.   
  321.     ( 
  322.       (MAKEDIR (HelpDir))
  323.       )
  324.       
  325.     )
  326.  
  327.  
  328.   (COPYFILES
  329.          (SOURCE "Profi_Packet/Help")
  330.          (DEST HelpDir)
  331.          (PATTERN "#?_H_EN#?")
  332.          )
  333.  
  334.  
  335.   (COPYFILES 
  336.          (SOURCE "Profi_Packet/Docs")
  337.          (DEST DocsDir)    
  338.          (ALL)
  339.          )
  340.  
  341.   (IF (NOT (EXISTS (ContribDir)))
  342.   
  343.     ( 
  344.       (MAKEDIR (ContribDir))
  345.       )
  346.     )
  347.  
  348.   (IF (NOT (EXISTS (ServerDir)))
  349.   
  350.     ( 
  351.       (MAKEDIR (ServerDir))
  352.       )
  353.     )
  354.  
  355.  
  356.       
  357.   (COPYFILES 
  358.          (SOURCE "Profi_Packet/Contrib")
  359.          (DEST ContribDir)    
  360.          (ALL)
  361.          )
  362.  
  363.  
  364.   (Complete 30)
  365.  
  366.   (IF (NOT (EXISTS (TNCInitDir)))
  367.     
  368.     (
  369.       (MAKEDIR (TNCInitDir))
  370.       (COPYFILES 
  371.          (SOURCE "Profi_Packet/TNC_Inits")
  372.          (DEST TNCInitDir)    
  373.          (ALL)
  374.          )
  375.       )
  376.     )
  377.  
  378.   (Complete 35)
  379.  
  380.   (IF (NOT (EXISTS (GlobalDir)))
  381.     
  382.     (
  383.       (MAKEDIR (GlobalDir))
  384.       (COPYFILES 
  385.          (SOURCE "Profi_Packet/GLOBAL")
  386.          (DEST GlobalDir)    
  387.          (ALL))
  388.       )
  389.  
  390.     )
  391.  
  392.   (Complete 40)
  393.   
  394.   (COPYFILES
  395.      (SOURCE "Profi_Packet/")
  396.      (DEST InstallDir)
  397.      (PATTERN "(%|ProfiPacket|ProfiPacket.info)")
  398.      )
  399.  
  400.  
  401.   
  402.  
  403.   (COmplete 65)
  404.  
  405.   (IF (NOT (EXISTS (FontDir))) (
  406.     (MAKEDIR "FONTS:PCFont")
  407.     (COPYFILES 
  408.       (SOURCE "Profi_Packet/PCFont")
  409.       (DEST FontDir)
  410.       (ALL)
  411.       )
  412.     (COPYFILES 
  413.       (SOURCE "Profi_Packet/")
  414.       (DEST DataDir)
  415.       (PATTERN "PCFont.font")
  416.       )
  417.     )
  418.   )
  419.  
  420.  
  421.   (COPYFILES 
  422.     (SOURCE "Profi_Packet/Servers")
  423.     (DEST ServerDir)
  424.     (PATTERN "Connect.Server")
  425.   )
  426.     
  427.  
  428.   
  429.  
  430.   (Complete 70)
  431.  
  432.   (set PatternSuffix ".Server")
  433.   (set PatternPath ServerDir)
  434.   (set PatternSource "Profi_Packet/Servers")
  435.   (P_CopyServers)
  436.  
  437.   (if (IN InstallLanguages 0)
  438.     ( 
  439.  
  440.      (set CatalogLanguage "deutsch")
  441.      (P_CopyCatalogs)
  442.      (COPYFILES
  443.             (SOURCE "Profi_Packet/Help")
  444.             (DEST HelpDir)
  445.             (PATTERN "#?_H_DEU#?")
  446.             )
  447.     )
  448.   )
  449.  
  450.   (if (IN InstallLanguages 1)
  451.     ( 
  452.  
  453.      (set CatalogLanguage "français")
  454.      (P_CopyCatalogs)
  455.      (COPYFILES
  456.             (SOURCE "Profi_Packet/Help")
  457.             (DEST HelpDir)
  458.             (PATTERN "#?_H_FRA#?")
  459.             )
  460.  
  461.     )
  462.   )
  463.  
  464.  
  465.   (if (IN InstallLanguages 2)
  466.     (
  467.  
  468.      (set CatalogLanguage "nederlands")
  469.      (P_CopyCatalogs)
  470.      (COPYFILES
  471.             (SOURCE "Profi_Packet/Help")
  472.             (DEST HelpDir)
  473.             (PATTERN "#?_H_NLD#?")
  474.             )
  475.  
  476.     )
  477.   )
  478.  
  479.   (if (IN InstallLanguages 3)
  480.     (
  481.  
  482.      (set CatalogLanguage "polski")
  483.      (P_CopyCatalogs)
  484.      (COPYFILES
  485.             (SOURCE "Profi_Packet/Help")
  486.             (DEST HelpDir)
  487.             (PATTERN "#?_H_PL#?")
  488.             )
  489.  
  490.     )
  491.   )
  492.  
  493.  
  494.   (if (IN InstallLanguages 4)
  495.     (
  496.      (set CatalogLanguage "norsk")
  497.      (P_CopyCatalogs)
  498.      (COPYFILES
  499.            (SOURCE "Profi_Packet/Help")
  500.            (DEST HelpDir)
  501.            (PATTERN "#?_H_NOR#?")
  502.            )
  503.  
  504.     )
  505.  
  506.   )
  507.  
  508.   (if (IN InstallLanguages 5)
  509.     (
  510.      (set CatalogLanguage "czech")
  511.      (P_CopyCatalogs)
  512.      (COPYFILES
  513.            (SOURCE "Profi_Packet/Help")
  514.            (DEST HelpDir)
  515.            (PATTERN "#?_H_CZ#?")
  516.            )
  517.  
  518.     )
  519.  
  520.   )
  521.   (if (IN InstallLanguages 6)
  522.     (
  523.      (set CatalogLanguage "español")
  524.      (P_CopyCatalogs)
  525.  
  526.      (COPYFILES
  527.            (SOURCE "Profi_Packet/Help")
  528.            (DEST HelpDir)
  529.            (PATTERN "#?_H_E_#?")
  530.            )
  531.      (COPYFILES
  532.            (SOURCE "Profi_Packet/Help")
  533.            (DEST HelpDir)
  534.            (PATTERN "#?_H_E")
  535.            )
  536.  
  537.     )
  538.  
  539.   )
  540.  
  541.  
  542. (Complete 85)
  543.  
  544.   (Working ("Converting user database\n&\nRepairing any damages"))
  545.   
  546.   (RUN (CAT "Profi_Packet/Contrib/ConvertUsers "
  547.         (TACKON DataDir "users.dat" ) ))
  548.  
  549.   (SET Retcode (run (CAT "Profi_Packet/Contrib/MailGetVersion " 
  550.         (TACKON DataDir "bbs" ))))
  551.  
  552.   
  553.  
  554.   (if (= Retcode 0)
  555.    (
  556.     (message "MAILBOX INDEX CONVERSION\n\n"
  557.              "The mailbox index has to be converted from version 0 "
  558.              "to version 1. Following features cannot be converted:\n\n"
  559.              "- mailbox forwarding queue")         
  560.     
  561.     (Working ("Converting bbs index version 0 to 1"))
  562.     (RUN (CAT "Profi_Packet/Contrib/MailConvert0to1 "
  563.          (TACKON DataDir "bbs")))
  564.  
  565.    )
  566.   )
  567.  
  568.   
  569.  
  570.  
  571. (complete 100)
  572.  
  573.  
  574.